/*
 *@TODO 正则表达式统一验证函数RegExp 
 *@author suyao
 *@data 2015-08-06
 *@version  1.01
 */
  //编码规则说明：第一位：0表示true；1表示false；2表示error
	
var regular = {  
 //=====编码===============正则表达式格式================================================================备注======================================
        100           :   /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/,                          //Email信箱
        101     	  :   /^(\d+)\.(\d+)\.(\d+)\.(\d+)$/g,                                          //ip地址
		102     	  :   /^1[3-9]\d{9}$/,       //手机号码
		103     	  :   /^[0][1-9]{2,3}-[0-9]{5,10}$/,                                            //电话号码
		104     	  :   /^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$/, //URL
		105     	  :   /^[1-9][0-9]{5}$/,                                                        //邮政编码
		106     	  :   /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/,                               //身份证
		107     	  :   /^[0-9]+[\.][0-9]{0,3}$/,                                                 //金额格式,格式定义为带小数的正数，小数点后最多三位 
		108     	  :   /^[0-9a-zA-Z\_]+$/,                                                       //密码1（英文+数字+下划线）
		109     	  :   /^[0-9a-zA-Z]+$/,                                                         //密码2（英文+数字）
		110     	  :   /^[0-9a-zA-Z\u4e00-\u9fa5]+$/,                                            //密码3（中文+英文+数字）
		111     	  :   /^[a-zA-Z0-9_]{5,17}$/,                                            //长度在6~18之间，只能包含字符、数字和下划线
		112           :   /^\d{1,}$/,                                                                //验证工号，全数字
		113           :  /^[a-zA-Z\u4e00-\u9fa5]+$/,                                                 // 中文和英文
		114           :  /^[0-9a-zA-Z_\u4e00-\u9FA5]+$/,                                            //中英文数字加下划线
		115           :   /^[\u4e00-\u9FA5\%\%]+$/,														//中文格式和百分号
		116           :    /^[a-zA-Z0-9_]+$/,                                                         //数字字母下划线
		117           :    /^[0-9]{0,5}$/,                                                        //用于varchar型输入校验
		118           :    /^[0-9]+[,][0-9]{1}$/,                                                      //用户decimal型输入校验
		119           :    /^[0-9a-zA-Z\(\)\（\）\_\u4e00-\u9FA5]+$/                                           //中英文数字加下划线括号                              
//============================================================================================================================================		
	};

var returnMessage = {
		1000:"",
		1001:"请正确填写邮件格式！",
		1002:"校验失败！",
		1010:"",
		1011:"请正确填写ip格式！",
		1012:"校验失败！",
		1020:"",
		1021:"请正确填写手机格式！",
		1022:"校验失败！",
		1030:"",
		1031:"请正确填写电话号码格式！",
		1032:"校验失败！",
		1040:"",
		1041:"请正确填写URl格式!",
		1042:"校验失败！",
		1050:"",
		1051:"请正确填写邮政编码格式!",
		1052:"校验失败！",
		1060:"",
		1061:"请正确填写身份证格式!",
		1062:"校验失败！",
		1070:"",
		1071:"格式填写错误",
		1072:"校验失败！",
		1080:"",
		1081:"格式填写错误",
		1082:"校验失败！",
		1090:"",
		1091:"格式填写错误",
		1092:"校验失败！",
		1100:"",
		1101:"只能包含字符、数字和下划线,长度在6~18之间!",
		1102:"校验失败！",
		1110:"",
		1111:"请正确填写身份证格式!",
		1112:"校验失败！",
		1120:"",
		1121:"正确格式为全数字!",
		1122:"校验失败！",
		1130:"",
		1131:"只能填写中文和英文!",
		1132:"校验失败！",
		1140:"",
		1141:"正确格式为中英文数字加下划线!",
		1142:"校验失败！",
		1150:"",
		1151:"只能填写中文和百分号!",
		1152:"校验失败！",
		1160:"",
		1161:"正确格式由数字字母下划线组成!",
		1162:"校验失败！",
		1170:"",
		1171:"正确格式由数字组成,范围为0~65535!",
		1172:"校验失败！",
		1180:"",
		1181:"正确格式由数字逗号组成,小数点后最多9位!",
		1182:"校验失败！",
		1190:"",
		1191:"正确格式为中英文数字加下划线括号!",
		1192:"校验失败！",
};
	//校验方法
//	function checkInfoById(paramId,code){
////		alert(paramId)
//		var checkValue = $("#"+paramId+"").val();
////		alert(checkValue)
//		if(checkValue.length == 0||checkValue == undefined ||checkValue == ''||checkValue == null){      //为空
//			$("#"+paramId+"").css("border-style","solid");
//			$("#"+paramId+"").css("border-color","#ff0000");
//			$("#"+paramId+"").css("border-width","1px");
//		}else{          //不为空
//			var returnCode = regExpCheck(checkValue,code);
//			if(returnCode == code+"0"){
//				$("#"+paramId+"").css("border-color","#24b979");
//				$("#"+paramId+"").css("border-width","1px");
//			}else if(returnCode == code+"1"){
//				$("#"+paramId+"").css("border-style","solid");
//				$("#"+paramId+"").css("border-color","#ff0000");
//				$("#"+paramId+"").css("border-width","1px");
//			}else{
//				showTips("填写信息校验错误！",1500,0);
//			}
//		}
//	}


//页面校验
//prarm1:需要校验值的id,prarm2:对应校验的编码,prarm3:信息返回位置id
	function checkInfo(checkId,code,errorId){
		var string = $('#'+checkId+'').val();
		if(string.length != 0&&string != ""&&string != null){
			var errorMessage = regExpCheck(string,code);
			$('#'+errorId+'').text(errorMessage);
		}else{
			$('#'+errorId+'').text("必填信息不可为空！");
		}
		
	}

	//指标名称字数限制
	function checkInfoCount(checkId,code,errorId,num){
		var string = $('#'+checkId+'').val();
		if(string.length != 0&&string != ""&&string != null){
			if(string.length > num){
				$('#'+errorId+'').text("超过最大长度，最大长度为"+num+"！");
			}else{
				var errorMessage = regExpCheck(string,code);
				$('#'+errorId+'').text(errorMessage);
			}
		}else{
			$('#'+errorId+'').text("必填信息不可为空！");
		}
	}
	
	//正则表达式验证函数
	function regExpCheck(string,code) {	
		var result;
//		alert(string);
//		alert(code); 
		if (regular.hasOwnProperty(code)) {   
			var regu=regular[code];
			var strNoNull=cTrim(string,0);
			//alert(strNoNull);
			if( regu.test(strNoNull)){
				result = code+"0";			
			}
			else
			if(!regu.test(strNoNull)){
				result = code+"1";	
			}else{
				result = code+"2";
				}
//			alert(result);
		} 
		var checkMessage = returnMessage[result];
//		alert(checkMessage)
		return checkMessage;
		
	};
	
	function regExpCheckReturnCode(string,code) {	
		var result;
//		alert(string);
//		alert(code); 
		if (regular.hasOwnProperty(code)) {   
			var regu=regular[code];
			var strNoNull=cTrim(string,0);
			//alert(strNoNull);
			if( regu.test(strNoNull)){
				result = 0;			
			}
			else
			if(!regu.test(strNoNull)){
				result = 1;	
			}else{
				result = 2;
				}
		} 
		return result;
		
	};
	//去空格函数
	//iType类型：0：去除左边和右边的空格；1：去除左边的空格；2：去除右边的空格
	function cTrim(sInputString, iType) 
	{
		var sTmpStr = ' ';
		var i = - 1;
    if (iType == 0 || iType == 1) 
		{
			while (sTmpStr == ' ') {
				++i;
				sTmpStr = sInputString.substring(i, 1);
			}
			sInputString = sInputString.substring(i);
		}
    if (iType == 0 || iType == 2) 
		{
			sTmpStr = ' ';
			i = sInputString.length;
			while (sTmpStr == ' ') {
				--i;
				sTmpStr = sInputString.substring(i, 1);
			}
			sInputString = sInputString.substring(0, i + 1);
		}
		return sInputString;
	};
	
	//显示提示框，目前三个参数(txt：要显示的文本；time：自动关闭的时间（不设置的话默认1500毫秒）；status：默认0为错误提示，1为正确提示；)
	function showTips(txt,time,status)
	{
		var htmlCon = '';
		if(txt != ''){
			if(status != 0 && status != undefined){
				htmlCon = '<div class="tipsBox" style="width:220px;padding:10px;background-color:#4AAF33;border-radius:4px;-webkit-border-radius: 4px;-moz-border-radius: 4px;color:#fff;box-shadow:0 0 3px #ddd inset;-webkit-box-shadow: 0 0 3px #ddd inset;text-align:center;position:fixed;top:25%;left:50%;z-index:999999;margin-left:-120px;"><img src="images/ok.png" style="vertical-align: middle;margin-right:5px;" alt="OK，"/>'+txt+'</div>';
			}else{
				htmlCon = '<div class="tipsBox" style="width:220px;padding:10px;background-color:#D84C31;border-radius:4px;-webkit-border-radius: 4px;-moz-border-radius: 4px;color:#fff;box-shadow:0 0 3px #ddd inset;-webkit-box-shadow: 0 0 3px #ddd inset;text-align:center;position:fixed;top:25%;left:50%;z-index:999999;margin-left:-120px;"><img src="images/err.png" style="vertical-align: middle;margin-right:5px;" alt="Error，"/>'+txt+'</div>';
			}
			$('body').prepend(htmlCon);
			if(time == '' || time == undefined){
				time = 1500; 
			}
			setTimeout(function(){ $('.tipsBox').remove(); },time);
		}
	}
	
	//比较时间输入大小顺序
	function checkDateIsTure(id1,id2,errorid){
		var date1 = $("#"+id1+"").val();
		var date2 = $("#"+id2+"").val();
		
		if(date1 != ""&&date1.length != 0&&date1 != null&&date1 != undefined){
			if(date2 != ""&&date2.length != 0&&date2 != null&&date2 != undefined){
				if(date1 > date2){
					var htmlStr = '<span style="color: red;font-size:12px;width: 90%">结束日期须大于开始日期！</span>';
					$("#"+errorid+"").html(htmlStr);
				}else{
					$("#"+errorid+"").html("");
				}
			}
		}else{
			$("#"+errorid+"").html("时间信息必填！");
		}
	}
	
	
	